home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / misc / amag / sh9301c.lha / Oberon(S.67) / Listing10.mod < prev    next >
Text File  |  1993-01-22  |  1KB  |  46 lines

  1. MODULE ZahlenratenDeLuxe;
  2. IMPORT
  3.   io, r: Random;
  4. VAR
  5.   Zahl, Tip, Max, Versuche: LONGINT;
  6.   jn, dummy: CHAR;
  7. BEGIN
  8.   io.WriteString ("Zahlenraten!\n\n");
  9.   REPEAT
  10.     REPEAT
  11.       io.WriteString ("Bitte oberen Grenze eingeben: ");
  12.     UNTIL io.ReadInt (Max) AND (Max > 1);
  13.     Zahl := r.RND (SHORT (Max)) + 1;
  14.     Versuche := 0;
  15.     REPEAT
  16.       REPEAT
  17.         io.WriteString ("Dein Tip: ");
  18.       UNTIL (io.ReadInt (Tip)) AND (Tip >= 1) AND (Tip <= Max);
  19.       INC (Versuche);
  20.       IF Tip > Zahl THEN
  21.         io.WriteString ("Leider zu groß!\n\n");
  22.       ELSIF Tip < Zahl THEN
  23.         io.WriteString ("Schade, zu klein!\n\n");
  24.       END; (* IF *)
  25.     UNTIL Tip = Zahl;
  26.     io.WriteString ("Geschafft in"); io.WriteInt (Versuche, 3);
  27.     io.WriteString (" Versuchen!\n");
  28.     CASE Versuche OF  (* ungerecht, da Max sich ändern kann. Na und!! *)
  29.     | 1..3:
  30.       io.WriteString ("Voll goil, ey!\n");
  31.     | 4..10:
  32.       io.WriteString ("Gut, Mann/Frau!\n");
  33.     | 11..20:
  34.       io.WriteString ("Naja...\n");
  35.     ELSE
  36.       io.WriteString ("Hahahahaha, üben!!!\n");
  37.     END; (* CASE *)
  38.     REPEAT
  39.       io.WriteString ("\nNochmal (j/n)? ");
  40.       io.Read (jn);
  41.       jn := CAP (jn); (* in Großbuchstaben umwandeln *)
  42.       io.Read (dummy); (* nochmal, da <RETURN> überlesen werden muß *)
  43.     UNTIL (jn = "J") OR (jn = "N");
  44.   UNTIL jn = "N";
  45. END ZahlenratenDeLuxe.
  46.